package com.jvm.interpreter;

/**
 * 指令接口
 */
public interface Instruction {

    /**
     * 获取字长的方法，默认为1，用来在指令结束时改变栈帧的程序计数器，使其指向下一条指令
     * @return
     */
    default int offset() {
        return 1;
    }

    /**
     * 具体指令的实现方式
     * @param frame 栈帧
     */
    void eval(Frame frame);
}
